/**
    算法描述：最小值的完全背包
    核心问题：在完全背包问题的基础上，既然求
        最小值，那么必须将dp所有数据设为最
        大值，dp[0]除外，因为0距离的费用肯定是0。
    解决所需数据结构+算法：数组 + 完全背包
**/
#include<iostream>
#include<cstring>
using namespace std;

int a[10] = {0}, dp[101];

int main() {
    int m;
    memset(dp, 1, sizeof(dp));
    dp[0] = 0;
    for (int i=1; i<=10; i++)
        cin >> a[i];
    cin >> m;
    for (int i=1; i<=10; i++) {
        for (int j=i; j<=m; j++) {
            dp[j] = min(dp[j], dp[j-i]+a[i]);
        }
    }
    cout << dp[m] << endl;
    return 0;
}